Method and device for detecting a rotational speed comprising an estimation of a measured value at low rotational speeds

ABSTRACT

An apparatus and a method with which a more-precise indication of an rpm is possible even if a position signal continues to be absent. To that end, a counter state of a counter is evaluated and is set to zero at each position signal. If the expected position signal remains absent for an overly long time, an rpm is estimated on the basis of the counter state of the counter. In this way, an rpm change can rapidly be detected and compensated for.

The invention relates to a method for ascertaining an rpm as generically defined by the preamble to claim 1, and to an apparatus for ascertaining an rpm as generically defined by the preamble to claim 5.

In many fields in technology, it is necessary to know a precise rpm or a precise rotary position of a motor. With direct current motors, for instance, it is known to detect the rpm. Various methods are used for this. One inexpensive variant is to calculate the rpm with the aid of Hall sensors; a Hall sensor detects the position of a rotor and sends that onward to a control unit. The Hall sensors react to the magnetic field of the rotating rotor, which is made of a magnetic material. For calculating the rpm, the time between two edges of a Hall signal is measured, and the rpm is calculated from that.

The object of the invention is to furnish a fast method for ascertaining an rpm and an apparatus for performing the method.

The object of the invention is attained by the method as defined by the characteristics of claim 1 and by the apparatus as defined by the characteristics of claim 5.

One advantage of the method of the invention is that an rpm estimate is made if a signal to be received from a position sensor is delayed. The arrival of a new position signal is delayed whenever the rpm has decreased. To that end, preferably the time that has elapsed since the last position signal and the arrival of the next position signal is measured and compared with the most recently measured rpm. If the time that has elapsed since the last position signal is greater than expected on the basis of the rpm, then the rpm is ascertained from the time that has elapsed since the last position signal.

In this way, it becomes possible to ascertain the rpm precisely and quickly.

In a preferred embodiment, as the elapsed time after which an rpm estimate is made, the difference between two preceding position signals is used. By using the position signals, complicated recalculation is made unnecessary. Thus the method can be performed quickly and requires only little computation power.

In a preferred embodiment, the rpm is calculated at fixed time intervals. Current rpm information is thus furnished on an ongoing basis.

For calculating the elapsed time, a counter is preferably used that at fixed time intervals increases a counter value by a fixed value. Thus the counter state is proportional to the time that has elapsed since the last position signal. Using a counter makes a simple, economical execution of the method of the invention possible.

In a preferred embodiment, an intervention is made into the rpm regulation of the electric motor if the time since the last position signal is longer than it should be on the basis of the most recently measured rpm. The rpm is then estimated on the basis of the time elapsed since the last position signal. In this way, fast and precise regulation of the electric motor is obtained. In particular, this procedure offers a reliable method for obtaining constant rpm regulation in direct current motors with low rotary speeds. Particularly in direct current motors that run at low rotary speeds, torque fluctuations can lead to uneven running of the motor, and the motor can be induced to vibrate. Increasing motor vibration may for instance even cause the motor to stop. The method of the invention reliably avoids these disadvantageous effects.

The invention will be described in further detail below in conjunction with the drawings.

FIG. 1 shows an apparatus according to the invention with a motor;

FIG. 2 is a graph that shows Hall signals as a function of the three phase currents; and

FIG. 3 is a schematic illustration of the method of the invention with the aid of a block diagram.

The invention will be described below in terms of a direct current motor 1 but can be used for any type of motor. Preferably, the direct-current motor is used in the form of a pump motor for an electrohydraulic power steering system in a motor vehicle. With the aid of the motor 1, however, any other type of device, in particular in a motor vehicle, can be triggered.

FIG. 1 schematically shows a commutated motor 1 that is operated with direct current. The motor one has a rotatably supported rotor 10, which in the embodiment shown has three magnetic poles 30, 31, 32, which are spaced apart by 120° from each other. A stator 11 embodied in the form of magnet coils 13, 14, 15 is disposed around the rotor 10. The stator 11 is in communication with an end stage 12 via a supply line. The end stage 12, for triggering the first, second and third magnet coils 13, 14, 15, is connected to a direct voltage source 16. The end stage 12 is connected to a control unit 5 via a control line. A first, second and third Hall sensor 2, 3, 4 are also disposed on the motor 1. The first, second and third Hall sensors 2, 3, 4 are disposed around the motor 1 at equidistant angular spacings. The Hall sensor 2, 3, 4 serve to detect the position of the rotor 10. If a magnetic pole 30, 31, 32 of the rotor 10 moves past a Hall sensor 2, 3, 4, then a Hall voltage is generated in the Hall sensor on the basis of the magnetic field of the rotor 10. The Hall voltage is carried onward to the control unit 5 via a signal line 7. Thus the control unit 5, because it knows the angular position of the first, second and third Hall sensor 2, 3, 4 relative to a rotation of the rotor 10, detects the local position of the rotor 10. The control unit 5 furthermore communicates with a counter 6, via a reset line 8 and a second signal line 9.

As a function of the position of the rotor 10, the control unit 5 controls the supply of current to the magnet coils 13, 14, 15 of the stator 11. As a result of the interaction among the magnetic fields that are generated by the magnet coils and the magnetic fields of the rotor 10, the rotor 10 is excited to perform a rotation at a desired rpm.

FIG. 2 shows a graph in which the Hall signals of the Hall sensors 2, 3, 4 are plotted over voltage courses of the first, second and third magnet coils 13, 14, 15. In the graph, UI1 is a voltage course of the first coil 13, UI2 is the voltage course of the second coil 14, and UI3 is the voltage course of the third coil 15. The voltage courses are shown in sinusoidal fashion in FIG. 2 for the sake of greater clarity. Depending on the desired magnetic field, the first, second or third magnet coil 13, 14, 15 is supplied with a current of positive or negative polarity, each via two respective switching transistors T1, T2, T3, T4, T5, T6. In the exemplary embodiment shown, for the sake of simplicity, block commutation are been provided, in which the magnet coils 13, 14, 15 are triggered with a block-shaped current (shaded areas in FIG. 2). However, any other type of triggering method may also be employed, such as sinusoidal commutation. In sinusoidal commutation, the magnet coils 13, 14, 15 are supplied with a clocked current signal that is embodied as essentially sinusoidal.

In the graph in FIG. 2, a first Hall signal HS1 of the first Hall sensor 2, a second Hall signal HS2 of the second Hall sensor 3, and a third Hall signal HS3 of the third Hall sensor 4, which the Hall sensors 2, 3, 4 report to the control unit 5, are shown chronologically parallel to the supply of current to the magnet coils 13, 14, 15. The Hall signals HS1, HS2, HS3 alternate between a low level and a high level in the form of a square wave signal. A low or high level is detected by a Hall sensor 2, 3, 4 if a north or south pole of the rotor 10 is acting on the Hall sensor 2, 3, 4. By means of a circuit that evaluates the Hall signal, the association of a high or low level with the north or south pole can be defined. For instance, the Hall signal of the first Hall sensor 1 jumps from a low level to a high level at time t1, and it jumps from a high level to a low level at time t4. The times are plotted as a function of an electrical angle; an electrical angle of 1080° represents one full revolution of the rotor 10.

Typically, the control unit 5, with the aid of the Hall signals HS1, HS2, HS3, calculates the rpm of the rotor. In the process, the control unit 5 uses the leading or trailing edges, for instance, of a Hall signal HS1, HS2, HS3. The control unit knows that three of the Hall sensors 2, 3, 4 are disposed around the motor 1. Moreover, per revolution of the rotor 10, three Hall signals are generated in each Hall sensor 2, 3, 4. Thus the leading edges of one Hall signal of one Hall sensor have a chronological spacing of 120°, and 360° represents one revolution of the rotor 10.

If the rotor 10 now rotates as a result of appropriate current supplied to the magnet coils 13, 14, 15, then at time t1 a magnet pole of the rotor moves past the first Hall sensor 2. In the first Hall sensor 2, a leading edge of a Hall signal is generated at time t1. This signal is reported to the control unit 5. At time t2, the control unit 5 receives a leading edge of the second Hall sensor 3. At time t3, the control unit 5 receives a report of a leading edge from the third Hall sensor 4. At time t7, a leading edge is again generated in the first Hall sensor 2, and at time t8, a leading edge is again generated in the second Hall sensor 3.

FIG. 3 is a schematic illustration to explain the method of the invention. The Hall sensors 2, 3, 4 output leading and trailing edges as described of a Hall signal HS1, HS2, HS3 to the control unit 5. With the aid of an internal timer 33, the control unit 5 measures the time that elapses after the detection of a leading or trailing edge of a Hall signal of a Hall sensor 2, 3, 4 until the next leading or trailing edge of the same Hall sensor 2, 3, 4. Via a capture function, the control unit 5 reads out the counter state of the internal timer 33 at a respective leading or trailing edge of the same Hall signal, and from the difference, it calculates the rpm of the rotor.

If the counter state of the internal timer 3 shows a differential value of 8000, for instance, between two leading edges of the same Hall signal, and the internal counter 33 increases its counter state every 2 μs, then between two leading edges of the first Hall signal HS1, a time of 16000 μs has elapsed. During one rotation of the rotor 10, three leading edges are generated in one Hall sensor. The measured time represents one-third of one rotation. The control unit calculates the rpm U by the following formula: U=1/(3·0.016 s)=20.833=1/s=1250 U/min.

Instead of calculating the rpm using the leading edges, the trailing edges of the Hall signals HS1, HS2, HS3 can be used. In the exemplary embodiment shown, the control unit 5 receives a trailing edge of the first Hall signal HS1 at time t4, a trailing edge of the second Hall signal HS2 at time t5, and a trailing edge of the third Hall signal HS3 at time t6. Correspondingly, the control unit 5 calculates the rpm of the motor 1, using the method described above for the leading edges.

The timer 6 runs parallel to this and is always reset when a Hall signal arrives. Upon receiving the leading edge of the first Hall signal HS1 at time t1, the control unit 5 starts the timer 6. The timer 6 increments an internal counter upward at fixed chronological increments. If the control unit 5 at time t2 receives the leading edge of the second Hall sensor HS2, then the control unit 5 stops the timer 6, reads out the counter state, sets the counter state to zero, and starts the timer 6 again. With the timer, independently of the capture function and of the internal timer 33, the elapsed time since the most recent edge of a Hall signal is detected. Since the Hall signals occur with chronological staggering, the counter state of the timer 6 is less, by a factor of six, then the time between two leading or trailing edges of one Hall signal.

If no trailing or leading edge of a Hall signal has arrived, then the most recently calculated rpm is compared by the control unit 5 with the elapsed time since the arrival of the most recent leading or trailing edge. If the elapsed time is greater than it should be on the basis of the most recently calculated rpm, then an rpm calculation is made on the basis of the counter state of the counter 6. This estimation operation is repeated until a leading or trailing edge of a Hall signal is detected, or a time-out signal for likely blocking of the motor arrives.

FIG. 3 shows the mode of operation of the method of the invention, in which at each new edge of a first, second or third Hall signal, the control unit 5 outputs a reset signal to the counter 6 over the reset line 8. The control unit 5 continuously compares whether the counter state of the counter 6 is greater than the chronological spacing of the most recent two leading or trailing edges of a Hall signal.

If the comparison shows that the counter state is greater than the chronological spacing, then the rpm is calculated from the counter state of the timer 6. The timer 6 preferably has a greater chronological pulse rate than the internal counter 33. Preferably, this chronological pulse rate is in the range of 1 ms, after which the timer 6 increases its counter state.

If the comparison shows that the counter state is greater than the chronological spacing of the most recent two leading or trailing edges of the Hall signals, then the following method is performed.

If the counter state of the counter 6 exceeds a predetermined counting time, which time corresponds to the chronological spacing of the last two leading or trailing edges of a Hall signal, then the rpm is estimated on the basis of the counter state of the timer 6, by the following formula: U=1/(3·counter state·n), where n stands for the number of Hall sensors, and the factor of 3 is due to the fact that the rotor has three magnet coils 30, 31, 32.

If the counter state is for instance (0.017/n) s, then the result is an rpm of 1/(3·0.017 s)=19.608 1/s=1176 1/min.

Thus an estimated rpm is obtained even though no edge signal of the same Hall signal has been detected.

Preferably, the estimation of the rpm is done at fixed chronological spacings, for instance every millisecond. In the instance described, at a counter state of (0.018/n) s, the new rpm U is thus calculated: U=1/(3·0.018 s)=18.519 1/s=1111 1/min.

In a corresponding way, an rpm estimate is made every millisecond, until a new capture value for an edge of a Hall signal has been detected, or until a time-out signal appears. Preferably, the control unit 5 compares the time since the last position signal with the most recently measured rpm. If the comparison shows that the time since the last position signal is greater than the time on the basis of which the most recently ascertained rpm was derived, then the rpm is estimated on the basis of the time since the last position signal. In this way, rpm fluctuations or an rpm drop can be reacted to more quickly.

Instead of the Hall sensors 2, 3, 4, other types of position transducers may also be used. 

1-5. (canceled)
 6. A method for ascertaining an rpm of a drive mechanism (1) of an electric motor in which a position transducer (2, 3, 4) is provided which is disposed in a fixed angular position relative to a rotation of the drive mechanism, in which the position transducer (2, 3, 4) outputs a position signal when the drive mechanism is in a fixed angular position, and in which the position signal is carried to a control unit, the method comprising using the control unit (5) to calculate an rpm of the drive mechanism (1) from the chronological spacing of the position signals; establishing a time frame that is defined by a position signal within which a new position signal is expected by the control unit (5); measuring the time since last the position signal by the control unit (5) using a time counter (6); and ascertaining an rpm of the drive mechanism (1) by the control unit (5) on the basis of the counter state of the time counter (6) if the position signal continues to be absent.
 7. The method of claim 6, wherein the time frame within which a new position signal is expected is defined as a function of the chronological spacing of the two preceding position signals.
 8. The method of claim 6, the rpm is calculated in fixed time intervals using the counter state of the time counter until a new position signal is received.
 9. The method of claim 7, the rpm is calculated in fixed time intervals using the counter state of the time counter until a new position signal is received.
 10. The method of one claim 6, wherein the calculated rpm is compared with a minimum rpm; and wherein an intervention into the regulation of the drive mechanism (1) is made if the minimum rpm is undershot.
 11. The method of one claim 7, wherein the calculated rpm is compared with a minimum rpm; and wherein an intervention into the regulation of the drive mechanism (1) is made if the minimum rpm is undershot.
 12. The method of one claim 8, wherein the calculated rpm is compared with a minimum rpm; and wherein an intervention into the regulation of the drive mechanism (1) is made if the minimum rpm is undershot.
 13. The method of one claim 9, wherein the calculated rpm is compared with a minimum rpm; and wherein an intervention into the regulation of the drive mechanism (1) is made if the minimum rpm is undershot.
 14. In an apparatus for ascertaining an rpm of a drive mechanism (1) of an electric motor, having a position transducer (2, 3, 4) with a rotor (10), in which an arithmetic control unit (5) is provided that is connected to the position transducer (1), and the position transducer (1) carries a position signal onward to the control unit (5) when the rotor (10) is in a defined position, the improvement comprising a counter (6) connected to the arithmetic control unit (5); the arithmetic unit (5) being operable on receiving a position signal to set the counter state of the counter (6) at the value of zero; the counter (6) being operable upon receiving a position signal to increase the counter state at fixed time intervals; the arithmetic control unit (5) being operable to monitor the arrival of a position signal; and the control unit (5) calculating an rpm on the basis of the counter state of the counter (6) if a position signal is not received within a fixed time frame since the last position signal. 